#ifndef TRI_MODEL_3D_H_
#define TRI_MODEL_3D_H_

#include "mesh.h" 
#include "base/logging.h" 

namespace tri{

class TModel3D : public tri::TEntity{
private:
	std::string mModel;

	static std::map<std::string,tri::TMesh*> mModelList;
	
public:
	TModel3D();
	virtual ~TModel3D();
	virtual void display();
	
	void setModel(std::string model);
	void setModelTexture(std::string file, std::string model = "");
	static bool loadModel(std::string key,std::string _file = "");
	static void deleteModel(std::string key);
	static bool exists(std::string key);
	void setOffsetPosition(tri::TVector);
	void setOffsetRotation(tri::TVector);
	
private:
	std::map<std::string, std::string> mTextures;
	tri::TVector mOffsetPosition;
	tri::TVector mOffsetRotation;
};

}

#endif